﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using com.nm.Attributes;
using Newtonsoft.Json;

namespace VerticaAPI.model
{
    public class DwGlobalVariableModel
    {
        public class NeceModel
        {
            [ParamDescription("名称")]
            public string dictName { get; set; }
            [ParamDescription("值")]
            public string dictValue { get; set; }
            [ParamDescription("父值")]
            public string parentDictValue { get; set; }
            [ParamDescription("说明")]
            public string Memo { get; set; }
            [ParamDescription("删除标识")]
            public long? isValid { get; set; }
            [ParamDescription("允许修改")]
            public Boolean? isModify { get; set; }

        }
        public class ShopAndCustBaseInfo {

            [ParamDescription("类型")]
            public string InfoType { get; set; }
            [ParamDescription("编号")]
            public string InfoID { get; set; }
            [ParamDescription("名称")]
            public string InfoName { get; set; }
            [ParamDescription("类别")]
            public string ExtrSource { get; set; }

        }

        public class CreatModel : NeceModel
        {
            [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
            [ParamDescription("读取时间")]
            public DateTime? LoadTime { get; set; }
            [JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
            [ParamDescription("修改时间")]
            public DateTime? EtlDate { get; set; }
        }

        /// <summary>
        /// 系统字典
        /// </summary>
        public class ListModel : NeceModel
        {
            [ParamDescription("字典列表")]
            public IList<ListModel> Childrens { get; set; }
        }

        public class ShowModel : NeceModel
        {
            [ParamDescription("字典ID(父)")]
            public long? ID { get; set; }
            [ParamDescription("子列表")]
            public IList<NeceModel> children { get; set; }
        }

        public class ParentModel
        {
            [ParamDescription("名称")]
            public string dictName { get; set; }
            [ParamDescription("值")]
            public string dictValue { get; set; }
            [ParamDescription("字典ID")]
            public long? ID { get; set; }
            [ParamDescription("删除标识")]
            public long? isValid { get; set; }
        }

        public class ModifyModel
        {
            [ParamDescription("旧字典")]
            public NeceModel oldDict { get; set; }
            [ParamDescription("新字典")]
            public NeceModel newDict { get; set; }
        }
    }

    /// <summary>
    /// 季节表实体
    /// </summary>
    /// Writer：梁家健
    /// Create Date：2017-03-20
    public class OdsErpSdMatSeasonModel
    {
        public class NeceModel
        {
            [ParamDescription("季节ID")]
            public string SeasonID { get; set; }
            [ParamDescription("季节名称")]
            public string SeasonName { get; set; }
        }
    }

    /// <summary>
    /// 类别表实体
    /// </summary>
    /// Writer：梁家健
    /// Create Date：2017-03-20
    public class OdsErpSdMatKindModel
    {
        public class NeceModel
        {
            [ParamDescription("类别ID")]
            public string KindID { get; set; }
            [ParamDescription("类别Code")]
            public string KindCode { get; set; }
            [ParamDescription("类别名称")]
            public string KindName { get; set; }
        }
    }

    /// <summary>
    /// 系列表实体
    /// </summary>
    /// Writer：梁家健
    /// Create Date：2017-03-20
    public class OdsErpSdMatSeriesModel
    {
        public class NeceModel
        {
            [ParamDescription("系列ID")]
            public string SeriesID { get; set; }
            [ParamDescription("系列Code")]
            public string SeriesCode { get; set; }
            [ParamDescription("系列名称")]
            public string SeriesName { get; set; }
        }
    }

    /// <summary>
    /// 小品类实体
    /// </summary>
    /// Writer：梁家健
    /// Create Date：2017-03-20
    public class OdsErpSDMatItemModel
    {
        public class NeceModel
        {
            [ParamDescription("小品类ID")]
            public string ItemID { get; set; }
            [ParamDescription("小品类名称")]
            public string ItemName { get; set; }
            [ParamDescription("小品类Code")]
            public string ItemCode { get; set; }
        }
    }

    /// <summary>
    /// 性别实体
    /// </summary>
    /// Writer：ljj
    /// Create Date：2017-08-08
    public class OdsErpSDMatSexModel
    {
        public class NeceModel
        {
            [ParamDescription("性别ID")]
            public string SexID { get; set; }

            [ParamDescription("性别名称")]
            public string SexName { get; set; }

            [ParamDescription("性别Code")]
            public string SexCode { get; set; }
        }
    }

    /// <summary>
    /// 货品实体
    /// </summary>
    /// Writer：ljj
    /// Create Date：2017-08-08
    public class OdsErpSDMatMaterialModel
    {
        public class NeceModel
        {
            [ParamDescription("年份")]
            public long? YearNo { get; set; }
            [ParamDescription("季节ID")]
            public string SeasonID { get; set; }
            [ParamDescription("性别ID")]
            public string SexID { get; set; }
            [ParamDescription("类别ID")]
            public string KindID { get; set; }
            [ParamDescription("系列ID")]
            public string SeriesID { get; set; }
            [ParamDescription("商品层")]
            public string MaterialProperty { get; set; }
            [ParamDescription("品类ID")]
            public string ModelID { get; set; }
            [ParamDescription("小品类ID")]
            public string ItemID { get; set; }
            [ParamDescription("货号")]
            public string MaterialID { get; set; }
            [ParamDescription("货品简称")]
            public string MaterialShortName { get; set; }
        }
    }
}
